/* http://msdn2.microsoft.com/en-us/library/aa372761.aspx */
/// <summary>
/// Full call to Vista method PowerSettingAccessCheck().
/// </summary>
/// <param name="AccessFlags">One or more check specifier flags</param>
/// <param name="PowerGuid">The relevant Power Policy GUID</param>
/// <returns></returns>
[DllImport("powerprof.dll", CharSet = CharSet.Auto, SetLastError = true)]
[return: MarshalAs(UnmanagedType.U4)]
internal static extern UInt32 PowerSettingAccessCheck(
POWER_DATA_ACCESSOR AccessFlags,
[MarshalAs(UnmanagedType.LPStruct)] Guid PowerGuid
);
/// <summary>
/// Partial call to Vista method PowerSettingAccessCheck() supporting null GUID parameter.
/// </summary>
/// <param name="AccessFlags">One or more check specifier flags</param>
/// <param name="PowerGuid">null</param>
/// <returns></returns>
[DllImport("powerprof.dll", CharSet = CharSet.Auto, SetLastError = true)]
[return: MarshalAs(UnmanagedType.U4)]
internal static extern UInt32 PowerSettingAccessCheck(
POWER_DATA_ACCESSOR AccessFlags,
IntPtr PowerGuid
);
#region Group Policy Access FlagsAttribute
[Flags]
public enum POWER_DATA_ACCESSOR
{
/// <summary>
/// Check for overrides on AC power settings.
/// </summary>
ACCESS_AC_POWER_SETTING_INDEX = 0x0,
/// <summary>
/// Check for overrides on DC power settings.
/// </summary>
ACCESS_DC_POWER_SETTING_INDEX = 0x1,
/// <summary>
/// Check for restrictions on specific power schemes.
/// </summary>
ACCESS_SCHEME = 0x10,
/// <summary>
/// Check for restrictions on active power schemes.
/// </summary>
ACCESS_ACTIVE_SCHEME = 0x13,
/// <summary>
/// Check for restrictions on creating or restoring power schemes.
/// </summary>
ACCESS_CREATE_SCHEME = 0x14
};
#endregion
Declare Function PowerSettingAccessCheck Lib "powrprof.dll" (TODO) As TODO
None.
Do you know one? Please contribute it!
None.
Please add some!
Please add some!